import request from '@/config/axios'

// 家庭成员 VO
export interface FamilyMembersVO {
  id: number // 成员ID
  familyId: number // 所属家庭ID
  userId: number // 关联用户ID
  name: string // 姓名
  gender: number // 性别：0-男 1-女
  relation: number // 与本人关系：0-本人 1-配偶 2-父亲 3-母亲 4-儿子 5-女儿 6-祖父 7-祖母 8-外祖父 9-外祖母 10-其他
  birthday: Date // 出生日期
  phone: string // 手机号
  idCard: string // 身份证号
}

// 家庭成员 API
export const FamilyMembersApi = {
  // 查询家庭成员分页
  getFamilyMembersPage: async (params: any) => {
    return await request.get({ url: `/family/family-members/page`, params })
  },

  // 查询家庭成员详情
  getFamilyMembersById: async (id: number) => {
    return await request.get({ url: `/family/family-members/getById?id=` + id })
  },

  // 新增家庭成员
  createFamilyMembers: async (data: FamilyMembersVO) => {
    return await request.post({ url: `/family/family-members/create`, data })
  },

  // 修改家庭成员
  updateFamilyMembers: async (data: FamilyMembersVO) => {
    return await request.post({ url: `/family/family-members/update`, data })
  },

  // 修改家庭成员状态
  updateFamilyMembersStatus: async (id: number, status: number) => {
    const data = {
      id,
      status
    }
    return await request.post({ url: `/family/family-members/updateStatus`, data: data })
  },

  // 删除家庭成员
  deleteFamilyMembersById: async (id: number) => {
    return await request.get({ url: `/family/family-members/delete?id=` + id })
  },

  // 导出家庭成员 Excel
  exportFamilyMembers: async (params) => {
    return await request.download({ url: `/family/family-members/export-excel`, params })
  }
}